home *** CD-ROM | disk | FTP | other *** search
/ PC World Interactive 7 / PC World Interactive 7.iso / program / pasprog.EXE / KARAKTER.TXT < prev    next >
Text File  |  1980-01-10  |  4KB  |  59 lines

  1.   ┌──────────────────────────────────────────────────────────────────────────┐
  2.   │┌────────────────────────────────────────────────────────────────────────┐│
  3.   ││                                                                        ││
  4.   ││                             KARAKTER EDITOR                            ││
  5.   ││                                                                        ││
  6.   │└────────────────────────────────────────────────────────────────────────┘│
  7.   │ PS 31 · ₧ubat'96                                       Cenk Tarhan       │
  8.   └──────────────────────────────────────────────────────────────────────────┘
  9.  
  10.  
  11.     Merhaba, Program Sanatçìlarì...
  12.  Bu seferki program, Turbo Pascal 6.0 ile yazìlm샠ve grafik ekranìnda çalìƒan
  13.  bir karakter tanìmlama programì. Pascal ile program yapan okuyucularìmìzìn
  14.  oldukça iƒine yarayacaºìnì umduºum bu program yardìmì ile grafik ekranìndaki
  15.  karakterleri dilediºiniz gibi deºiƒtirebiliyor, kendi karakter setinizi
  16.  oluƒturabiliyorsunuz. Bu iƒlem sadece ASCII deºeri 128 ile 255 arasìnda olan
  17.  karakterler ve Pascal'ìn "Defaultfont" fontu için geçerli. ₧u anda "kaydet"
  18.  seçeneºini kullanìnca program sadece o anki karakter tablosunu C: sürücüsünün
  19.  "root" rehberine "karakter.tan" adlì bir dosya olarak kaydediyor. Kodu biraz
  20.  inceleyerek ve programì istediºiniz gibi deºiƒtirerek deºiƒik isimler altìnda
  21.  deºiƒik karakter tablolarì oluƒturup bunlarì diske kaydedebilir ve
  22.  istediºiniz zaman Pascal programlarìnìzìn içerisinde kullanabilirsiniz.
  23.  
  24.  ₧imdi programìn iƒleyiƒine bir deºinelim. Pascal,  Defaultfont ile
  25.  karakterleri grafik ekranìnda görüntülerken ASCII 128 ve ASCII 255 arasìndaki
  26.  karakterlerin bilgisini sistem belleºinden almaktadìr. Bu yüzden de, bu
  27.  belleºin içeriºini deºiƒtirerek karakterlerin görünüƒlerini deºiƒtirmek
  28.  mümkündür. Bu programda ASCII 128 ile ASCII 255 arasìndaki 8*8'lik
  29.  karakterlerin bilgileri sìralì olarak "karakterler" adìnda 1024 bayt
  30.  uzunluºunda bir "array" içerisinde tutulmaktadìr. Bu array'ìn her elemanì bir
  31.  karakterin 8 bit'ine yani bir sìrasìna eƒittir. Bunu bir örnekle açmak
  32.  istiyorum. Örneºin "büyük eƒit" iƒaretini ele alalìm. Bu iƒaretin karakter
  33.  tablosundaki yeri ASCII 242'dir. Ve bu karakteri tanìmlayan 8 bayt da
  34.  karakterler array'inde sìrasìyla 912, 913, 914, 915, 916, 917, 918 ve
  35.  919'uncu baytlarìdìr. Bu baytlarì bit seviyesinde inceleresek, karakterlerin
  36.  açìk bölümlerinin 1 kapalì bölümlerinin de 0 olduºu görülür. Yani, büyük
  37.  eƒittir iƒareti aƒaºìdaki tablodaki gibi tanìmlanmìƒtìr.
  38.  
  39.   01100000    bayt deºeri: 60      array içerisindeki yeri: 912
  40.   00110000    bayt deºeri: 48      array içerisindeki yeri: 913
  41.   00011000    bayt deºeri: 24      array içerisindeki yeri: 914
  42.   00110000    bayt deºeri: 48      array içerisindeki yeri: 915
  43.   01100000    bayt deºeri: 60      array içerisindeki yeri: 916
  44.   00000000    bayt deºeri: 0       array içerisindeki yeri: 917
  45.   11111100    bayt deºeri: 252     array içerisindeki yeri: 918
  46.   00000000    bayt deºeri: 0       array içerisindeki yeri: 919
  47.  
  48.  Görüldüºü gibi gerekli array elemanìnì deºiƒtirerek istediºiniz tipte 8*8
  49.  bitmap karakterler oluƒturabilirsiniz. Zaten program da bunu yapmaktadìr.
  50.  Sadece ufak bir editör yardìmì ile karakterlerin seçimi ve deºiƒtirilmesi
  51.  kolaylaƒtìrìlm샠ve bir de karakter tablosunu kaydetmek, yüklemek seçenekleri
  52.  eklenmiƒtir. Karakter tablosunu kaydetmek de aslìnda karakterlerler
  53.  array'inin içeriºini diske yazmak ve Karakter tablosunu yüklemek de diskten
  54.  daha önce yazìlm샠sayìlarì okuyup bu sayìlarì direkt olarak array'in içine
  55.  yazdìrmaktìr.
  56.  
  57.  
  58.  
  59.